package main

import "fmt"

/**
 * 1、go 语言中没有枚举关键字，枚举是一种特殊的常量
 * 2、枚举变量后面必须要赋值
 * 3、iota 表示自增
 */
func testEnum() {
	// 普通枚举
	const (
		java = "JAVA"
		c    = "c#"
		goo  = "go"
	)

	// 自增值枚举
	const (
		java1 = iota
		_
		javascript
		c1
		c2
	)

	// iota 可以参与运算
	// k kb mb gb tb pb
	const (
		b = 1 << (10 * iota)
		kb
		mb
		gb
		tb
		pb
	)

	fmt.Println(b, kb, mb, gb, tb, pb)
}

func main() {
	testEnum()
}
